package com.ryder.subject.infra.basic.service;

import com.ryder.subject.infra.basic.entity.SubjectMultiple;

import java.util.LinkedList;
import java.util.List;

/**
 * 描述: 多选题信息表(SubjectMultiple)表服务接口
 *
 * @author Ryder
 * @version 1.0
 * @since 1.0 // 版本号，指明从哪个版本开始
 * 更新日期: 2025-02-05
 */

public interface SubjectMultipleService {

    /**
     * 通过ID查询单条数据
     *
     * @param id 主键
     * @return 实例对象
     */
    SubjectMultiple queryById(Long id);

    /**
     * 新增数据
     *
     * @param subjectMultiple 实例对象
     * @return 实例对象
     */
    SubjectMultiple insert(SubjectMultiple subjectMultiple);

    /**
     * 修改数据
     *
     * @param subjectMultiple 实例对象
     * @return 实例对象
     */
    SubjectMultiple update(SubjectMultiple subjectMultiple);

    /**
     * 通过主键删除数据
     *
     * @param id 主键
     * @return 是否成功
     */
    boolean deleteById(Long id);

    /**
     * 批量插入多选题信息表
     *
     * @param subjectMultipleList 多选题信息表集合
     */
    void batchInsert(LinkedList<SubjectMultiple> subjectMultipleList);
    /**
     * 根据条件查询多选题信息表
     *
     * @param subjectMultiple 多选题信息表
     * @return 多选题信息表集合
     */
    List<SubjectMultiple> queryByCondition(SubjectMultiple subjectMultiple);
}
